Device Driver (D)

A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z 

A

adjmsg (D3) - trim bytes from a message
alenlist (D4X) - overview of Address/Length Lists
alenlist_ops: alenlist_append, alenlist_clear, alenlist_create, alenlist_cursor_create, alenlist_cursor_destroy, alenlist_cursor_init, alenlist_cursor_offset, alenlist_destroy, alenlist_get, kvaddr_to_alenlist, uvaddr_to_alenlist, buf_to_alenlist (D3X) - operations on address/length lists
allocb (D3) - allocate a message block
ASSERT (D3) - verify assertion

B

badaddr (D3X) - test for valid input bus address badaddr_val - test for valid input device address and return value
bcanput (D3) - test for flow control in a specified priority band
bcopy (D3) - copy data between address locations in the kernel
biodone (D3) - release buffer after block I/O and wakeup processes
bioerror (D3) - manipulate error fields within a buffer header
biowait (D3) - suspend processes pending completion of block I/O
bp_mapin (D3) - allocate virtual address space for buffer page list
bp_mapout (D3) - deallocate virtual address space for buffer page list
bptophys (D3X) - get physical address of buffer data
brelse (D3) - return a buffer to the system's free list
btod (D3X) - convert from bytes to disk sectors
btop (D3) - convert size in bytes to size in pages (round down)
btopr (D3) - convert size in bytes to size in pages (round up)
buf (D4) - block I/O data transfer structure
bufcall (D3) - call a function when a buffer becomes available
bzero (D3) - clear memory for a given number of bytes

C

canput (D3) - test for room in a message queue
close (D2) - relinquish access to a device
clrbuf (D3) - erase the contents of a buffer
cmn_err (D3) - display an error message or panic the system
copyb (D3) - copy a message block
copyin (D3) - copy data from a user buffer to a driver buffer
copymsg (D3) - copy a message
copyout (D3) - copy data from a driver buffer to a user buffer
copyreq (D4) - STREAMS transparent ioctl copy request structure
copyresp (D4) - STREAMS transparent ioctl copy response structure
cpsema (D3X) - conditionally perform a "P" or wait semaphore operation
cvsema (D3X) - conditionally perform a "V" or wait semaphore operation

D

datab (D4) - STREAMS data block structure
datamsg (D3) - test whether a message is a data message
delay (D3) - delay process execution for a specified number of clock ticks
devflag (D1) - driver flags
device_desc (D4X) - concepts and use of device descriptors
device_desc_ops: device_desc_dup, device_desc_free, device_desc_default_get, device_desc_default_set, device_desc_intr_target_get, device_desc_intr_target_set (D3X) - operations on device descriptors
dki_dcache_inval (D3X) - invalidate the data cache for a given range of virtual addresses
dki_dcache_wb (D3X) - write back the data cache for a given range of virtual addresses
dki_dcache_wbinval (D3X) - write back and invalidate the data cache for a given range of virtual addresses
dma_map (D3X) - load DMA mapping registers for an imminent transfer
dma_mapaddr (D3X) - return the "bus virtual" address for a given map and address
dma_mapalloc (D3X) - allocate a DMA map
dma_mapfree (D3X) - free a DMA map
drv_getparm (D3) - retrieve kernel state information
drv_hztousec (D3) - convert clock ticks to microseconds
drv_priv (D3) - determine whether credentials are privileged
drv_setparm (D3) - set kernel state information
drv_usectohz (D3) - convert microseconds to clock ticks
drv_usecwait (D3) - busy-wait for specified interval
dtimeout (D3) - execute a function on a specified processor after a specified length of time
dupb (D3) - duplicate a message block
dupmsg (D3) - duplicate a message

E

eisa_dma_buf (D4) - EISA DMA buffer descriptor structure
eisa_dma_cb (D4) - DMA command block structure
eisa_dma_disable (D3X) - disable recognition of hardware requests on a DMA channel
eisa_dma_enable (D3X) - enable recognition of hardware requests on a DMA channel
eisa_dma_free_buf (D3X) - free a previously allocated DMA buffer descriptor
eisa_dma_free_cb (D3X) - free a previously allocated DMA command block
eisa_dma_get_buf (D3X) - allocated DMA buffer descriptor
eisa_dma_get_cb (D3X) - allocated a DMA command block
eisa_dma_prog (D3X) - program a DMA operation for a subsequent software request
eisa_dma_stop (D3X) - stop software-initiated DMA operation on a channel and release it
eisa_dma_swstart (D3X) - initiate a DMA operation via software request
enableok (D3) - allow a queue to be serviced
errnos (D5) - error numbers
esballoc (D3) - allocate a message block using an externally-supplied buffer
esbbcall (D3) - call a function when an externally-supplied buffer can be allocated
etoimajor (D3) - convert external to internal major device number

F

fasthzto (D3) - convert timeval to fast ticks
flushband (D3) - flush messages in a specified priority band
flushbus (D3X) - make sure contents of the write buffer are flushed to the system bus
flushq (D3) - flush messages on a queue
free_rtn (D4) - STREAMS driver's message free routine structure
freeb (D3) - free a message block
freemsg (D3) - free a message
freerbuf (D3) - free a raw buffer header
freesema (D3X) - free the resources associated with a semaphore
fubyte (D3X) - fetch (read) a byte from user space
fuword (D3X) - fetch (read) a word from user space

G

geteblk (D3) - get an empty buffer
getemajor (D3) - get external major device number
geteminor (D3) - get external minor device number
geterror (D3) - retrieve error number from a buffer header
getmajor (D3) - get internal major device number
getminor (D3) - get internal minor device number
getnextpg (D3X) - get next page pointer
getq (D3) - get the next message from a queue
getrbuf (D3) - get a raw buffer header

H

halt (D2) - shut down the driver when the system shuts down
hwcpin (D3X) - copy data from I/O devices using 16-bit reads
hwcpout (D3X) - copy data to I/O devices using 16-bit writes
hwgraph.admin: device_admin_info_get, device_driver_admin_info_get (D3X) - retrieve administrative information for device driver
hwgraph.dev: hwgraph_block_device_add, hwgraph_char_device_add, hwgraph_chmod, device_info_set, device_info_get (D3X) - create and use device vertex
hwgraph.edge: hwgraph_edge_add, hwgraph_edge_remove, hwgraph_edge_get, hwgraph_traverse (D3X) - operations on hwgraph edges
hwgraph.inv: device_inventory_add, device_inventory_get_next, device_controller_num_get, device_controller_num_set (D3X) - device inventory information
hwgraph.lblinfo: hwgraph_info_add_LBL, hwgraph_info_remove_LBL, hwgraph_info_replace_LBL, hwgraph_info_get_LBL, hwgraph_info_export_LBL, hwgraph_info_unexport_LBL (D3X) - manage labelled info in the hwgraph
hwgraph.legacy: gio_hwgraph_lookup, io4_hwgraph_lookup, vme_hwgraph_lookup (D3X) - legacy device hardware support
hwgraph.net: if_hwgraph_add, if_hwgraph_alias_add, if_hwgraph_alias_remove (D3X) - network device information
hwgraph.vertex: hwgraph_vertex_create, hwgraph_vertex_destroy, hwgraph_vertex_clone, hwgraph_vertex_ref, hwgraph_vertex_unref (D3X) - manage vertexes of hardware graph
hwgraph_intro (D3X) - hardware graph overview for device driver writers

I

info (D1) - STREAMS driver and module information
init,edtinit,start (D2) - initialize drivers and their devices
initnsema (D3X) - initialize a synchronizing semaphore to a given value
initnsema_mutex (D3X) - initialize a mutex semaphore to one
insq (D3) - insert a message into a queue
intr (D2) - process a device interrupt
intro.D1 (D1) - introduction to driver data
intro.D2 (D2) - introduction to driver entry point routines
intro.D3 (D3) - introduction to kernel utility routines
intro.D4 (D4) - introduction to kernel data structures
intro.D5 (D5) - introduction to kernel #define's
iocblk (D4) - STREAMS ioctl structure
ioctl (D2) - control a character device
iovec (D4) - data storage structure for I/O using uio(D4)
ip26_enable_ucmem, ip26_return_ucmem (D3) - change memory mode on IP26 or IP28 processor
itimeout, fast_itimeout (D3) - execute a function after a (possibly high resolution) delay
itoemajor (D3) - convert internal to external major device number

J

K

kern_calloc (D3X) - allocate storage for objects of a specified size
kern_free (D3X) - free kernel memory space
kern_malloc (D3X) - allocate kernel virtual memory
kmem_alloc (D3) - allocate space from kernel free memory
kmem_free (D3) - free previously allocated kernel memory
kmem_zalloc (D3) - allocate and clear space from kernel free memory
kvtophys (D3X) - get physical address of buffer data

L

linkb (D3) - concatenate two message blocks
linkblk (D4) - STREAMS multiplexor link structure
LOCK (D3) - acquire a basic lock
LOCK_ALLOC, LOCK_INIT (D3) - basic lock initialization
LOCK_DEALLOC, LOCK_DESTROY (D3) - basic lock de-initialization

M

makedevice (D3) - make device number from major and minor numbers
map (D2X) - support virtual mapping for memory-mapped device
max (D3) - return the larger of two integers
messages (D5) - STREAMS messages
min (D3) - return the lesser of two integers
mmap (D2) - support virtual mapping for memory-mapped device
module_info (D4) - STREAMS driver and module information structure
msgb (D4) - STREAMS message block structure
msgdsize (D3) - return number of bytes of data in a message
msgpullup (D3) - concatenate bytes in a message
MUTEX_ALLOC, MUTEX_INIT (D3) - mutual exclusion lock initialization
MUTEX_DEALLOC, MUTEX_DESTROY (D3) - mutual exclusion lock de-initialization
MUTEX_LOCK (D3) - acquire a mutual exclusion lock
MUTEX_MINE (D3) - query whether a mutual exclusion lock is owned by caller
MUTEX_OWNED (D3) - query whether a mutual exclusion lock is available
MUTEX_TRYLOCK (D3) - try to acquire a sleep lock
MUTEX_UNLOCK (D3) - release a mutual exclusion lock
mversion (D1) - dynamically loadable module version string

N

ngeteblk (D3) - get an empty buffer of the specified size
nic_vertex_info_set (D3) - decode NIC, label vertex nic_vertex_info_get - get decoded NIC data from vertex nic_vertex_info_match - check for NIC data match nic_vmc_add - establish callback based on NIC data match nic_vmc_del - deactivate NIC data match callback nic_access_mcr32 - common NIC access function
noenable (D3) - prevent a queue from being scheduled

O

open (D2) - gain access to a device
OTHERQ (D3) - get a pointer to queue's partner queue

P

pcibr_hints_dualslot (D3) - note device uses two PCI slots pcibr_hints_fix_rrbs - prevent all automatic RRB allocation pcibr_hints_fix_some_rrbs - prevent some automatic RRB allocation pcibr_hints_handsoff - prevent generic handling pcibr_hints_subdevs - specify subdevice mask
pcibr_rrb_check (D3) - query RRB allocation pcibr_rrb_alloc - allocate RRBs for this slot pcibr_alloc_all_rrbs - allocate RRBs for slot group pcibr_set_rrb_callback - set up allocation callback
pciio: pciio_driver_register, pciio_driver_unregister, pciio_iterate, pciio_reset (D3) - control PCI driver infrastructure
pciio_config: pciio_config_get, pciio_config_set (D3) - access PCI Configuration register
pciio_dma: pciio_dmatrans_addr, pciio_dmatrans_list, pciio_dmamap_alloc, pciio_dmamap_addr, pciio_dmamap_list, pciio_dmamap_done, pciio_dmamap_free, pciio_dma_addr, pciio_dmamap_drain, pciio_dmaaddr_drain, pciio_dmalist_drain (D3) - manage DMA on PCI bus
pciio_error: pciio_error_register (D3) - PCI error handling function
pciio_get: pciio_intr_dev_get, pciio_intr_cpu_get, pciio_pio_dev_get, pciio_pio_slot_get, pciio_pio_space_get, pciio_pio_pciaddr_get, pciio_pio_mapsz_get, pciio_dma_dev_get, pciio_dma_slot_get, pciio_info_get, pciio_info_dev_get, pciio_info_bus_get, pciio_info_slot_get, pciio_info_function_get, pciio_info_vendor_id_get, pciio_info_device_id_get (D3) - interrogate PCI infrastructure
pciio_intr: pciio_intr_alloc, pciio_intr_connect, pciio_intr_disconnect, pciio_intr_free (D3) - manage PCI Interrupts
pciio_pio: pciio_pio_addr, pciio_piotrans_addr, pciio_piomap_alloc, pciio_piomap_addr, pciio_piomap_done, pciio_piomap_free, pciio_piospace_alloc, pciio_piospace_free (D3) - programmed I/O to PCI bus
pcmsg (D3) - test whether a message is a priority control message
phalloc (D3) - allocate and initialize a pollhead structure
phfree (D3) - free a pollhead structure
physiock (D3) - validate and issue a raw I/O request
pio_andb_rmw (D3X) - byte I/O-bus read-modify-write cycle routines
pio_andh_rmw (D3X) - half-word I/O-bus read-modify-write cycle routine
pio_andw_rmw (D3X) - word I/O-bus read-modify-write cycle routines
pio_badaddr (D3X) - test for valid input bus address pio_badaddr_val - test for valid input bus address and return value
pio_bcopyin (D3X) - copy data from a bus (I/O) address to kernel's virtual space
pio_bcopyout (D3X) - copy data from kernel's virtual space to a bus (I/O) address
pio_mapaddr (D3X) - used with FIXED maps to generate a kernel pointer to desired I/O bus space
pio_mapalloc (D3X) - allocate a PIO map
pio_mapfree (D3X) - free up a previously allocated PIO map
pio_orb_rmw (D3X) - I/O-bus read-modify-write cycle routines
pio_orh_rmw (D3X) - I/O-bus read-modify-write cycle routines
pio_orw_rmw (D3X) - I/O-bus read-modify-write cycle routines
pio_wbadaddr (D3X) - test for valid output bus address pio_wbadaddr_val - test for valid output bus address and write value
poll (D2) - poll entry point for a non-STREAMS character driver
pollwakeup (D3) - inform polling processes that an event has occurred
pptophys (D3X) - convert page pointer to physical address
prefix (D1) - driver prefix
print (D2) - display a driver message on the system console
proc_ref (D3) - obtain a reference to a process for signaling
proc_signal (D3) - send a signal to a process
proc_unref (D3) - release a reference to a process
psema (D3X) - perform a "P" or wait semaphore operation
ptob (D3) - convert size in pages to size in bytes
put (D2) - receive messages from the preceding queue
putbq (D3) - place a message at the head of a queue
putctl (D3) - send a control message to a queue
putctl1 (D3) - send a control message with a one-byte parameter to a queue
putnext (D3) - send a message to the next queue
putq (D3) - put a message on a queue

Q

qenable (D3) - schedule a queue's service routine to be run
qinit (D4) - STREAMS queue initialization structure
qreply (D3) - send a message in the opposite direction in a stream
qsize (D3) - find the number of messages on a queue
queue (D4) - STREAMS queue structure

R

RD (D3) - get a pointer to the read queue
read (D2) - read data from a device
rmalloc (D3) - allocate space from a private space management map
rmalloc_wait (D3) - allocate space from a private space management map
rmallocmap (D3) - allocate and initialize a private space management map
rmfree (D3) - free space into a private space management map
rmfreemap (D3) - free a private space management map
rmvb (D3) - remove a message block from a message
rmvq (D3) - remove a message from a queue
RW_ALLOC, RW_INIT (D3) - reader/writer lock initialization
RW_DEALLOC, RW_DESTROY (D3) - read/write lock de-initialization
RW_RDLOCK (D3) - acquire a read/write lock in read mode
RW_TRYRDLOCK (D3) - try to acquire a read/write lock in read mode
RW_TRYWRLOCK (D3) - try to acquire a read/write lock in write mode
RW_UNLOCK (D3) - release a read/write lock
RW_WRLOCK (D3) - acquire a read/write lock in write mode

S

SAMESTR (D3) - test if next queue is of the same type
scsi_abort (D3X) - abort a command previously issued by scsi_command
scsi_alloc (D3X) - allocate communication channel to host adapter driver
scsi_command (D3X) - issue a command to a SCSI device
scsi_free (D3X) - release communication channel to host adapter driver
scsi_info (D3X) - get information about a SCSI device
scsi_ioctl (D3X) - perform host adapter ioctl
sgset (D3X) - assign physical addresses to a vector of software scatter-gather registers
signals (D5) - signal numbers
size (D2) - return size of logical block device
size64 (D2) - return size of logical block device
sleep (D3) - suspend process execution pending occurrence of an event
SLEEP_ALLOC, SLEEP_INIT (D3) - sleep lock initialization
SLEEP_DEALLOC, SLEEP_DESTROY (D3) - sleep lock de-initialization
SLEEP_LOCK (D3) - acquire a sleep lock
SLEEP_LOCK_SIG (D3) - acquire a sleep lock
SLEEP_LOCKAVAIL (D3) - query whether a sleep lock is available
SLEEP_TRYLOCK (D3) - try to acquire a sleep lock
SLEEP_UNLOCK (D3) - release a sleep lock
spl (D3) - block/allow interrupts on a processor
srv (D2) - service queued messages
strategy (D2) - perform block I/O
strcat (D3) - concatenate strings
strcpy (D3) - copy a string
streams_interrupt (D3X) - synchronize interrupt-level function with STREAMS mechanism
STREAMS_TIMEOUT (D3X) - synchronize timeout with STREAMS mechanism
streamtab (D4) - STREAMS driver and module declaration structure
strlog (D3) - submit messages to the log driver
stroptions (D4) - stream head option structure
strqget (D3) - get information about a queue or band of the queue
strqset (D3) - change information about a queue or band of the queue
subyte (D3X) - set (write) a byte to user space
suword (D3X) - set (write) a word to user space
SV_ALLOC, SV_INIT (D3) - synchronization variable initialization
SV_BROADCAST (D3) - wake up all processes sleeping on a synchronization variable
SV_DEALLOC, SV_DESTROY (D3) - syncronization variable de-initialization
SV_SIGNAL (D3) - wake up a process sleeping on a synchronization variable
SV_WAIT (D3) - sleep on a synchronization variable
SV_WAIT_SIG (D3) - sleep on a synchronization variable

T

TRYLOCK (D3) - try to acquire a basic lock

U

uio (D4) - scatter/gather I/O request structure
uiomove (D3) - copy data using uio(D4) structure
uiophysio (D3X) - set up user data space for I/O
unbufcall (D3) - cancel a pending bufcall request
unlinkb (D3) - remove a message block from the head of a message
unload (D2) - unload a loadable kernel module
UNLOCK (D3) - release a basic lock
unmap (D2X) - support virtual unmapping for memory-mapped device
untimeout (D3) - cancel previous timeout request
ureadc (D3) - copy a character to space described by uio(D4) structure
userdma,undma (D3X) - lock, unlock physical memory in user space
uwritec (D3) - return a character from space described by uio(D4) structure

V

v_getaddr (D3X) - get the user address associated with virtual handle
v_gethandle (D3X) - get unique identifier associated with virtual handle
v_getlen (D3X) - get length of user address space associated with virtual handle
v_mapphys (D3X) - map physical addresses into user address space
valusema (D3X) - return the value associated with a semaphore
vme_adapter (D3X) - determine VME adapter
vme_ivec_alloc (D3X) - allocate a VME bus interrupt VECTOR
vme_ivec_free (D3X) - free up a VME bus interrupt VECTOR
vme_ivec_set (D3X) - register a VME bus interrupt handler
vmeio_piomap_alloc, vmeio_piomap_addr, vmeio_piomap_done, vmeio_piomap_free, vmeio_pio_bcopyin, vmeio_pio_bcopyout, vmeio_dmamap_alloc, vmeio_dmamap_addr, vmeio_dmamap_list, vmeio_dmamap_done, vmeio_dmamap_free, vmeio_intr_alloc, vmeio_intr_vector_get, vmeio_intr_connect, vmeio_intr_disconnect, vmeio_intr_free, (D3) - VMEbus device driver API
volatile (D3X) - inform the compiler of volatile variables
vpsema (D3X) - perform an atomic "V" and "P" semaphore operation on two semaphores
vsema (D3X) - perform a "V" or signal semaphore operation

W

wakeup (D3) - resume suspended process execution
wbadaddr (D3X) - test for valid output bus address wbadaddr_val - test for valid output bus address and write value
WR (D3) - get a pointer to the write queue
write (D2) - write data to a device

X

XIO_PACK (D3) - build a packed XIO address XIO_PACKED - check if XIO address is packed XIO_PORT - extract port from packed XIO address XIO_ADDR - extract offset from packed XIO address XIO_NOWHERE - nonexistant XIO target
xtalk (D3) - IRIX XIO Infrastructure xwidget_driver_register - claim a class of XIO widgets xwidget_driver_unregister - remove driver from registry xtalk_iterate - revisit all claimed widgets
xtalk_dmatrans_addr (D3) - construct DMA address xtalk_dmatrans_list - construct DMA addresses xtalk_dmamap_alloc - allocate an XIO DMA channel xtalk_dmamap_addr - set DMA channel target xtalk_dmamap_list - set DMA channel targets xtalk_dmamap_done - mark DMA channel unused xtalk_dmamap_free - release XIO DMA channel resources xtalk_dmamap_drain - drain a DMA MAP based DMA path xtalk_dmaaddr_drain - drain a DMA path to a specific block xtalk_dmalist_drain - drain a DMA path for an alenlist
xtalk_error_register (D3) - register handling function
xtalk_intr_alloc (D3) - allocate a XIO Interrupt channel xtalk_intr_connect - connect handling function xtalk_intr_disconnect - disconnect handling function xtalk_intr_free - release a XIO Interrupt channel
xtalk_intr_dev_get (D3) - get XIO connect point from intr xtalk_intr_cpu_get - get target cpu from intr xtalk_intr_vector_get - get interrupt vector number xtalk_intr_target_get - get interrupt target port number xtalk_intr_addr_get - get interrupt target address xtalk_intr_sfarg_get - get setfunc argument
xtalk_pio_addr (D3) - construct PIO address xtalk_piotrans_addr - construct PIO address xtalk_piomap_alloc - allocate an XIO PIO channel xtalk_piomap_addr - set PIO channel target xtalk_piomap_done - mark PIO channel unused xtalk_piomap_free - release XIO PIO channel resources